package com.ruoyi.web.domain;

import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import com.ruoyi.common.utils.serializer.BigDecimalToPlainStringSerializer;
import lombok.Data;

import java.math.BigDecimal;

/**
 * QGPay充值明细对象 qg_pay_recharge_detail
 *
 * @date 2023-03-15
 */
@Data
public class QgPayRechargeDetail extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    @JsonSerialize(using = ToStringSerializer.class)
    private Long id;

    /**
     * 用户id
     */
    @Excel(name = "用户id")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long userId;

    /**
     * 法币名称
     */
    @Excel(name = "法币名称")
    private String legalTenderName;

    /**
     * 法币代码
     */
    @Excel(name = "法币代码")
    private String legalTenderCode;

    /**
     * 业务名称
     */
    @Excel(name = "业务名称")
    private String businessName;

    /**
     * 业务编码
     */
    @Excel(name = "业务编码")
    private String businessCode;

    /**
     * 法币金额
     */
    @Excel(name = "法币金额")
    @JsonSerialize(using = BigDecimalToPlainStringSerializer.class)
    private BigDecimal amount;

    /**
     * 对USDT（美元）汇率
     */
    @Excel(name = "对USDT（美元）汇率")
    @JsonSerialize(using = BigDecimalToPlainStringSerializer.class)
    private BigDecimal rate;

    /**
     * USDT数量
     */
    @Excel(name = "USDT数量")
    @JsonSerialize(using = BigDecimalToPlainStringSerializer.class)
    private BigDecimal usdt;

    /**
     * 实际法币金额
     */
    @Excel(name = "实际法币金额")
    @JsonSerialize(using = BigDecimalToPlainStringSerializer.class)
    private BigDecimal actualAmount;

    /**
     * 实际对USDT（美元）汇率
     */
    @Excel(name = "实际对USDT（美元）汇率")
    @JsonSerialize(using = BigDecimalToPlainStringSerializer.class)
    private BigDecimal actualRate;

    /**
     * 实际USDT数量
     */
    @Excel(name = "实际USDT数量")
    @JsonSerialize(using = BigDecimalToPlainStringSerializer.class)
    private BigDecimal actualUsdt;

    /**
     * 状态（0未支付、1支付完成）
     */
    @Excel(name = "状态", readConverterExp = "0=未支付、1支付完成")
    private String status;

    /**
     * 是否删除（0否、null是）
     */
    @Excel(name = "是否删除", readConverterExp = "0=否、null是")
    private String isDeleted;
}
